package com.foxnicweb.app.domain.patent.meta;

import com.github.foxnic.api.bean.BeanProperty;
import com.foxnicweb.app.domain.patent.PatentMember;
import javax.persistence.Transient;



/**
 * @author 李方捷 , leefangjie@qq.com
 * @since 2023-04-19 10:25:35
 * @sign CD0E202BAED5205ABD13142113252B2D
 * 此文件由工具自动生成，请勿修改。若表结构或配置发生变动，请使用工具重新生成。
*/

public class PatentMemberMeta {
	
	/**
	 * 主键 , 类型: java.lang.Long
	*/
	public static final String ID="id";
	
	/**
	 * 主键 , 类型: java.lang.Long
	*/
	public static final BeanProperty<com.foxnicweb.app.domain.patent.PatentMember,java.lang.Long> ID_PROP = new BeanProperty(com.foxnicweb.app.domain.patent.PatentMember.class ,ID, java.lang.Long.class, "主键", "主键", java.lang.Long.class, null);
	
	/**
	 * 案件ID , 类型: java.lang.Long
	*/
	public static final String PATENT_ID="patentId";
	
	/**
	 * 案件ID , 类型: java.lang.Long
	*/
	public static final BeanProperty<com.foxnicweb.app.domain.patent.PatentMember,java.lang.Long> PATENT_ID_PROP = new BeanProperty(com.foxnicweb.app.domain.patent.PatentMember.class ,PATENT_ID, java.lang.Long.class, "案件ID", "案件ID", java.lang.Long.class, null);
	
	/**
	 * 员工ID , 类型: java.lang.String
	*/
	public static final String EMP_ID="empId";
	
	/**
	 * 员工ID , 类型: java.lang.String
	*/
	public static final BeanProperty<com.foxnicweb.app.domain.patent.PatentMember,java.lang.String> EMP_ID_PROP = new BeanProperty(com.foxnicweb.app.domain.patent.PatentMember.class ,EMP_ID, java.lang.String.class, "员工ID", "员工ID", java.lang.String.class, null);
	
	/**
	 * 成员类型 , 类型: java.lang.String
	*/
	public static final String MEMBER_TYPE="memberType";
	
	/**
	 * 成员类型 , 类型: java.lang.String
	*/
	public static final BeanProperty<com.foxnicweb.app.domain.patent.PatentMember,java.lang.String> MEMBER_TYPE_PROP = new BeanProperty(com.foxnicweb.app.domain.patent.PatentMember.class ,MEMBER_TYPE, java.lang.String.class, "成员类型", "成员类型", java.lang.String.class, null);
	
	/**
	 * 姓名 , 类型: java.lang.String
	*/
	public static final String NAME="name";
	
	/**
	 * 姓名 , 类型: java.lang.String
	*/
	public static final BeanProperty<com.foxnicweb.app.domain.patent.PatentMember,java.lang.String> NAME_PROP = new BeanProperty(com.foxnicweb.app.domain.patent.PatentMember.class ,NAME, java.lang.String.class, "姓名", "姓名", java.lang.String.class, null);
	
	/**
	 * 全部属性清单
	*/
	public static final String[] $PROPS={ ID , PATENT_ID , EMP_ID , MEMBER_TYPE , NAME };
	
	/**
	 * 代理类
	*/
	public static class $$proxy$$ extends com.foxnicweb.app.domain.patent.PatentMember {

		private static final long serialVersionUID = 1L;

		
		/**
		 * 设置 主键
		 * @param id 主键
		 * @return 当前对象
		*/
		public PatentMember setId(Long id) {
			super.change(ID,super.getId(),id);
			super.setId(id);
			return this;
		}
		
		/**
		 * 设置 案件ID
		 * @param patentId 案件ID
		 * @return 当前对象
		*/
		public PatentMember setPatentId(Long patentId) {
			super.change(PATENT_ID,super.getPatentId(),patentId);
			super.setPatentId(patentId);
			return this;
		}
		
		/**
		 * 设置 员工ID
		 * @param empId 员工ID
		 * @return 当前对象
		*/
		public PatentMember setEmpId(String empId) {
			super.change(EMP_ID,super.getEmpId(),empId);
			super.setEmpId(empId);
			return this;
		}
		
		/**
		 * 设置 成员类型
		 * @param memberType 成员类型
		 * @return 当前对象
		*/
		public PatentMember setMemberType(String memberType) {
			super.change(MEMBER_TYPE,super.getMemberType(),memberType);
			super.setMemberType(memberType);
			return this;
		}
		
		/**
		 * 设置 姓名
		 * @param name 姓名
		 * @return 当前对象
		*/
		public PatentMember setName(String name) {
			super.change(NAME,super.getName(),name);
			super.setName(name);
			return this;
		}

		/**
		 * 克隆当前对象
		*/
		@Transient
		public PatentMember clone() {
			return duplicate(true);
		}

		/**
		 * 复制当前对象
		 * @param all 是否复制全部属性，当 false 时，仅复制来自数据表的属性
		*/
		@Transient
		public PatentMember duplicate(boolean all) {
			$$proxy$$ inst=new $$proxy$$();
			inst.setEmpId(this.getEmpId());
			inst.setPatentId(this.getPatentId());
			inst.setName(this.getName());
			inst.setId(this.getId());
			inst.setMemberType(this.getMemberType());
			inst.clearModifies();
			return inst;
		}

	}
}